#pragma once
#include "SDL.h" 

#include <string>

using namespace std;

class Coisa
{
public:
	Coisa(string spritePath, int sizeX, int sizeY, int posX, int posY, int bgColorRed, int bgColorGreen, int bgColorBlue);
	~Coisa(void);

	SDL_Surface* getSurface(void);
	void setSpritePath(string spritePath);
	void loadSpriteIntoSurface();
	void freeSurface();
	int getSizeX();
	void setSizeX(int x);
	int getSizeY();
	void setSizeY(int y);
	int getPosX();
	void setPosX(int x);
	int getPosY();
	void setPosY(int y);
	int getVelX();
	void setVelX(int x);
	int getVelY();
	void setVelY(int y);
	int getBgColorRed();
	void setBgColorRed(int bgColorRed);
	int getBgColorGreen();
	void setBgColorGreen(int bgColorGreen);
	int getBgColorBlue();
	void setBgColorBlue(int bgColorBlue);	

protected:
	SDL_Surface* tempSurface; 
	SDL_Surface* surface; 
	string spritePath;	
	int sizeX;
	int sizeY;
	int posX;
	int posY;
	int velX;
	int velY;
	/* Cor do background do srprite da coisa, que sera removido: */
	int bgColorRed;
	int bgColorGreen;
	int bgColorBlue;
};

